The present invention relates to a data communications system and a data communications method to share memory data in real time between a plurality of distributed controllers connected by a serial bus.
In built-in control equipment such as a robot, etc. on which multiple devices such as a sensor, an actuator, etc. are mounted and which needs complicated control using those devices, a configuration which performs cooperative control controlling those multiple devices by dividing them in some distributed controllers and having them communicate with each other is often adopted. There are some reasons why the configuration of distributed control type like this is adopted, but the reasons particularly important as built-in control are to make the equipment smaller by alleviating the concentration of wiring, to improve the noise problem with the shortening of the wiring distance, and to enhance the reliability. Also, in order to realize the configuration of distributed control type, it is necessary that the communication between the distributed controllers can be realized in real time (low latency) and the effective communication speed is fast, and the load of each controller which is needed for the communication process is small.
In a configuration in which multiple devices are controlled by a single controller, as the signal lines to connect to each device have to be wired in concentration in a controller part, a large idle space to lead around the multiple signal lines in concentration has to be secured on the periphery of the controller. Further, a wiring space to lead around the wire bundle which is bundled up thick from the end part of the equipment to the controller part in the center is needed. Also, in the wire within the apparatus which has a movable joint part such as a manipulator of the robot, as the wire length and the spatial room in order to prevent the excessive force from being loaded on the wire bundle in the movable area become necessary when passing the wire bundle on inner side of the movable joint, the joint structure becomes bigger. From these reasons, in the configuration of concentrated control type, it is difficult to make the equipment smaller.
Also, there is a case where a big noise is irradiated to the periphery from a large current wire such as an actuator driving line. Therefore, when a micro analog signal line of a sensor, etc. and a large current wire such as an actuator driving line are wired in long distance from the end part of the equipment to the controller part, there is a case where the noise irradiated from the large current wire mixes into the analog signal line and becomes a cause of the malfunction, and the reliability of the equipment is deteriorated.
From these reasons, a configuration in which the controllers are distributed per each part of the equipment and the device which belongs to a particular part is controlled being wired to a controller installed near the device is adopted. Also, when the cooperative control is performed using information of the device which is over a plurality of parts, the data is transferred to and from each other via communication buses between the controllers. On this occasion, as it is necessary to arrange each controller physically distributing them according to the arrangement of the corresponding device, a serial bus which has a small wiring amount and is adequate for the long distance wiring is often adopted as a communication bus between the controllers. In this way, in the distributed controller system which performs the cooperative control by the communication via the serial bus, it is necessary that the communication is sufficiently in real time (with low latency) to realize the sufficiently short control circle and that the load of the controller which is needed for the communication process is small in the degree that it does not become an obstacle for the primary control process, and it is important in which method the communication is performed.
Presently, one of the communication methods which are most popular is LAN (Local Area Network) using Ethernet (registered trademark) (trademark: Ethernet (registered trademark), a standard 100BASE-TX is standardized as IEEE802.3u). As Ethernet (registered trademark) adopts CSMA/CD (Carrier Sense Multiple Access/Collision Detection) method, it has a problem that the worst value of the communication delay time (latency) is unpredictable in addition to that when the communication data amount is increased the data collision often occurs and the utilization ratio of the bus is deteriorated. Therefore, Ethernet (registered trademark) is not adequate as a communication method for the built-in control. Also, one of the communication control methods of LAN which solved the problem of the data collision is Token Ring (Token Ring, a standard which is standardized by IEEE802.5). Data called “token” which indicates transmission right flows in the network and a terminal which wants to transmit data fetches the token and transmits the data and after the transmission is completed it lets the token flow in the network again. Thereby it is controlled so that only one terminal uses the network at a time and the problem of the data collision is solved. However, the token is a data which has a certain length and as it flows in the same line as the communication data, the load is put on the communication path. Further, as the data is transmitted on the network in order, there is a problem that the communication latency is large.
Also, as in both Ethernet (registered trademark) and Token Ring the indication of destination of data transfer, the data transmission process, the response process, the error correction process, etc. are all controlled by software, the load of the processor is large. Therefore, when the hardware of the body of the equipment and the software to be built in the controller, etc. are developed in parallel at the same time, it is difficult to separate the cause when the fault has occurred.
In JP-A-2002-73584 it is disclosed about an example of a plurality of stations memory data shared system in which the memory data is shared between a plurality of stations by connecting a plurality of controllers (stations) on which memories are mounted by a serial bus and mounting hardware which periodically copies the memory data which each station holds to corresponding area of the memory of other stations in order to solve the above-mentioned problems. In Step Technica, Inc. technical document (STD-CU40-V2.1J) “Cunet user's manual (MKY40)”, it is disclosed about the product embodiment regarding the plurality of stations memory data shared system.